Class UML 2.4.1::Actor
Description:
An actor specifies a role played by a user or any other system that interacts
with the subject.
Direct Superclasses: BehavioredClassifierDirect Subclasses: Class Precedence List: Actor,
BehavioredClassifier,
Classifier,
Namespace,
Type,
PackageableElement,
ParameterableElement,
RedefinableElement,
NamedElement,
TemplateableElement,
ElementProperties:
classifierBehavior :
Behavior (0 1); -- source
BehavioredClassifier interfaceRealization :
InterfaceRealization (0 *); -- source
BehavioredClassifier ownedBehavior :
Behavior (0 *); -- source
BehavioredClassifier attribute :
Property (0 *); -- source
Classifier collaborationUse :
CollaborationUse (0 *); -- source
Classifier feature :
Feature (0 *); -- source
ClassifierSpecifies each feature defined in the classifier. Note that there may be
members of the Classifier that are of the type Feature but are not included
in this association, e.g. inherited features.
{
readonly}
Derived union with sources: (attribute)
Subsets: Namespace.member
Opposite: Feature.featuringClassifier
general :
Classifier (0 *); -- source
Classifier generalization :
Generalization (0 *); -- source
ClassifierSpecifies the Generalization relationships for this Classifier. These Generalizations
navigaten to more general classifiers in the generalization hierarchy.
{
composite}
Subsets: Element.ownedElement
Opposite: Generalization.specific
inheritedMember :
NamedElement (0 *); -- source
Classifier isAbstract : Boolean (1 1); -- source
Classifier isFinalSpecialization : Boolean (1 1); -- source
Classifier ownedTemplateSignature :
RedefinableTemplateSignature (0 1); -- source
Classifier ownedUseCase :
UseCase (0 *); -- source
Classifier powertypeExtent :
GeneralizationSet (0 *); -- source
Classifier redefinedClassifier :
Classifier (0 *); -- source
Classifier representation :
CollaborationUse (0 1); -- source
Classifier substitution :
Substitution (0 *); -- source
Classifier templateParameter :
ClassifierTemplateParameter (0 1); -- source
Classifier useCase :
UseCase (0 *); -- source
Classifier elementImport :
ElementImport (0 *); -- source
Namespace importedMember :
PackageableElement (0 *); -- source
NamespaceReferences the PackageableElements that are members of this Namespace as
a result of either PackageImports or ElementImports.
{
readonly,
derived}
Subsets: Namespace.member
member :
NamedElement (0 *); -- source
NamespaceA collection of NamedElements identifiable within the Namespace, either
by being owned or by being introduced by importing or inheritance.
{
readonly}
Derived union with sources: (ownedRule, ownedMember, importedMember, ownedUseCase, inheritedMember, feature, attribute, ownedBehavior)
ownedMember :
NamedElement (0 *); -- source
Namespace ownedRule :
Constraint (0 *); -- source
Namespace packageImport :
PackageImport (0 *); -- source
Namespace package :
Package (0 1); -- source
TypeSpecifies the owning package of this classifier, if any.
Opposite: Package.ownedType
visibility :
VisibilityKind (1 1); -- source
PackageableElement owningTemplateParameter :
TemplateParameter (0 1); -- source
ParameterableElement isLeaf : Boolean (1 1); -- source
RedefinableElement redefinedElement :
RedefinableElement (0 *); -- source
RedefinableElement redefinitionContext :
Classifier (0 *); -- source
RedefinableElement clientDependency :
Dependency (0 *); -- source
NamedElement name : String (0 1); -- source
NamedElement nameExpression :
StringExpression (0 1); -- source
NamedElement namespace :
Namespace (0 1); -- source
NamedElement qualifiedName : String (0 1); -- source
NamedElement templateBinding :
TemplateBinding (0 *); -- source
TemplateableElement ownedComment :
Comment (0 *); -- source
Element ownedElement :
Element (0 *); -- source
Element owner :
Element (0 1); -- source
ElementConstraints:
Signature: must_have_name() : Boolean;
Description: An actor must have a name.
Expression: name->notEmpty()
Signature: associations() : Boolean;
Description: An actor can only have associations to use cases, components and classes.
Furthermore these associations must be binary.
The OCL used here is not normative.Editor's notes: Actor.ownedAttribute is not defined.
Expression: true
Original: self.ownedAttribute->forAll ( a | (a.association->notEmpty()) implies ((a.association.memberEnd.size() = 2) and (a.opposite.class.oclIsKindOf(UseCase) or (a.opposite.class.oclIsKindOf(Class) and not a.opposite.class.oclIsKindOf(Behavior))))
Operations:
No additional operations.
Send questions or comments to
[email protected].